package org.plex.model.imp;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.plex.model.Assignment;
import org.plex.model.ImageTicket;
import org.plex.model.Task;

import com.adobe.idp.taskmanager.dsc.client.query.TaskRow;

public class TaskImp implements Task
{

	private TaskRow taskRow;
	
	public TaskImp(TaskRow  taskRow)throws NullPointerException
	{
	   if(null==taskRow)
	   {
		   throw new NullPointerException();
	   }
	   this.taskRow=taskRow;
	}
	
	public long getActionInstanceId()
	{
		// TODO Auto-generated method stub
		
		return taskRow.getActionInstanceId();
	}

	public long getAssignmentQueueId()
	{
		// TODO Auto-generated method stub
		return taskRow.getAssignmentQueueId();
	}

	public short getAssignmentQueueType()
	{
		// TODO Auto-generated method stub
		return taskRow.getAssignmentQueueType();
	}

	public short getAssignmentStatus()
	{
		// TODO Auto-generated method stub
		return taskRow.getAssignmentStatus();
	}

	public short getAssignmentType()
	{
		// TODO Auto-generated method stub
		return taskRow.getAssignmentType();
	}

	public Date getCompleteTime()
	{
		// TODO Auto-generated method stub
		return taskRow.getCompleteTime();
	}

	public String getConsultGroupId()
	{
		// TODO Auto-generated method stub
		return taskRow.getConsultGroupId();
	}

	public String getCreationId()
	{
		// TODO Auto-generated method stub
		return taskRow.getCreationId();
	}

	public Assignment getCurrentAssignment()
	{
		// TODO Auto-generated method stub
		return new AssignmentImp(taskRow.getCurrentAssignment());
	}

	public Date getDeadline()
	{
		// TODO Auto-generated method stub
		return taskRow.getDeadline();
	}

	public String getDescription()
	{
		// TODO Auto-generated method stub
		return taskRow.getDescription();
	}

	public String getForwardGroupId()
	{
		// TODO Auto-generated method stub
		return taskRow.getForwardGroupId();
	}

	public ImageTicket getImageTicket()
	{
		// TODO Auto-generated method stub
		return new ImageTicketImp(taskRow.getImageTicket());
	}

	public String getInstructions()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getInstructions();
	}

	public Date getNextReminder()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getNextReminder();
	}

	public long getNumForms()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getNumForms();
	}

	public long getNumFormsToBeSaved()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getNumFormsToBeSaved();
	}

	public String getOutOfOfficeCommonName()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getOutOfOfficeCommonName();
	}

	public String getOutOfOfficeUserId()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getOutOfOfficeUserId();
	}

	public short getPriority()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getPriority();
	}

	public long getProcessInstanceId()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getProcessInstanceId();
	}

	public short getProcessInstanceStatus()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getProcessInstanceStatus();
	}

	public String getProcessName()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getProcessName();
	}

	public List getProcessVarialbes()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getProcessVariables();
	}

	public String getQueueOwner()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getQueueOwner();
	}

	public String getQueueOwnerId()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getQueueOwnerId();
	}

	public long getReminderCount()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getReminderCount();
	}

	public List<String> getRouteList()
	{
		// TODO Auto-generated method stub
		List<String> list=new ArrayList<String>();
		String[] routeList=taskRow.getRouteList();
		for(String string:routeList)
		{
			list.add(string);
		}
		return list;
	}

	public long getSavedFormCount()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getSavedFormCount();
	}

	public String getSelectedRoute()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getSelectedRoute();
	}

	public Date getStartTime()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getStartTime();
	}

	public String getStepName()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getStepName();
	}

	public Date getTaskCreateTime()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getTaskCreateTime();
	}

	public long getTaskId()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getTaskId();
	}

	public List getTaskNotifications()
	{
		// TODO Auto-generated method stub
		return this.getTaskNotifications();
	}

	public short getTaskStatus()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getTaskStatus();
	}

	public Date getTaskUpdateTime()
	{
		// TODO Auto-generated method stub
		return this.taskRow.getTaskUpdateTime();
	}

	public boolean isRouteSelectionRequired()
	{
		// TODO Auto-generated method stub
		return this.taskRow.isRouteSelectionRequired();
	}

	public boolean isShowAttachments()
	{
		// TODO Auto-generated method stub
		return this.taskRow.isShowAttachments();
	}

	public boolean isStartTask()
	{
		// TODO Auto-generated method stub
		return this.taskRow.isStartTask();
	}

	public boolean isVisible()
	{
		// TODO Auto-generated method stub
		return this.taskRow.isVisible();
	}

}
